package com.ncloud.system.service;

import java.util.List;

import com.alibaba.fastjson.JSONObject;
import com.ncloud.system.entity.User;

public interface UserService {

	User findByUsername(String username);
	
	User findByUserId(Long userId);
	
	List<User> findByDepartId(Long departId);

	void lockUser(Long userId);
	
	void unLockUser(Long userId);

	void updateFirstLoginTime(User user);
	int getRoleUsers(Long roleId);

	void resetPassword(Long userId, String password);

	Object getUsers(JSONObject json);

	void checkPassword(Long userId, String password);

	void setUserHead(Long userId, String filePath);

	void deleteUser(Long userId);
	
	void deleteUserByDepartId(Long departId);

	void addUser(JSONObject json);

	void updateUser(JSONObject json);

	boolean isExists(String userName);
	
	void lockUserByCompany(Long companyId);
	
	void unLockUserByCompany(Long companyId);

}
